package org.springblade.modules.repair.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springblade.modules.repair.dto.statistical.DeptGroupDTO;

import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * @Date 11:30 2022/11/29
 * @Description {
 *   保养统计 趋势 查询条件
 * }
 * @Author lsay
 **/
@Data
public class PlanCheckStatisticsQueryDTO {

	/**
	 * 电梯年审类型 0-年审，1-非年审
	 */
	private Integer useType;

	/**
	 * 开始时间 yyyy-MM-dd
	 */
	private String startDate;

	/**
	 * 结束时间 yyyy-MM-dd
	 */
	private String endDate;

	/**
	 * 组信息
	 */
	private List<DeptGroupDTO> deptGroups;

	/**
	 * 用户信息
	 */
	private List<Long> userIds;

	/**
	 * 1-日 2-周 3-月
	 */
	private Integer dataType;

	/**
	 * 查询变量 接口不同含义不同 {
	 *     1-累计作业时长 2-工单平均作业时长
	 *     1-待开始 2-进行中 3-提交任务 4-已完成 5-维保签字
	 *     1-及时 2-逾期
	 *     1-正常 2-系统签退 3-签到定位异常 3-签退定位异常
	 *     1-未逾期 2-已逾期
	 *     1-正常梯 2-重复故障梯 3-非重复故障梯
	 *     1-未设置责任组
	 *     2-未设置责任人
	 *     3-从未排期电梯
	 *     4-无剩余排期 区分年审类型及在保情况
	 *     5-是否违规
	 *     6-已脱保 有剩余排期
	 * }
	 */
	private Integer temp;

	private Integer planAuditType;

	/**
	 * 组id集合
	 */
	private List<Long> deptIds;

	/**
	 * 工单状态
	 */
	private Integer planStatus;

	/**
	 * 在保状态 -1:无状态，1: 脱保，2: 在保（合同期内），3：在保（合同期外），4：在保（拟定保养）';
	 */
	private Integer maintainStatus;

	/**
	 * 组名称
	 */
	private String deptName;

	/**
	 * 1-合规 2-明天即将违规 3-已违规
	 */
	private Integer compliance;

}
